using System;
using System.Windows.Data;

namespace ibba.src.noriskbo.code.converter
{
    public class StatusImageConverter: IValueConverter
    {
        
        #region IValueConverter Members

        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            if (parameter !=null && parameter.ToString() == "mini")
            {
                switch (value.ToString().Trim())
                {
                    case Constantes.StatusFluxoLM.RASCUNHO:
                        return Constantes.SourceImageApp.STATUS_MINI_RA; 

                    case Constantes.StatusFluxoLM.EM_APROVACAO:
                        return Constantes.SourceImageApp.STATUS_MINI_EA;

                    case Constantes.StatusFluxoLM.EM_EXCLUSAO:
                        return Constantes.SourceImageApp.STATUS_MINI_EE;

                    case Constantes.StatusFluxoLM.APROVADO:
                        return Constantes.SourceImageApp.STATUS_MINI_AP;

                    case Constantes.StatusFluxoLM.BAIXA_OPERACIONAL:
                        return Constantes.SourceImageApp.STATUS_MINI_BO;

                    case Constantes.StatusFluxoLM.EM_BAIXA_OPERACIONAL:
                        return Constantes.SourceImageApp.STATUS_MINI_EB;

                    case Constantes.StatusFluxoLM.EM_EXCLUSAO_BAIXA_OPERACIONAL:
                        return Constantes.SourceImageApp.STATUS_MINI_BE;

                    case "-":
                        return Constantes.SourceImageApp.STATUS_MINI_AT;

                    default:
                        return value;
                }
            }
            else
            {
                switch (value.ToString().Trim())
                {
                    case Constantes.StatusFluxoLM.RASCUNHO:
                        return Constantes.SourceImageApp.STATUS_RA;

                    case Constantes.StatusFluxoLM.EM_APROVACAO:
                        return Constantes.SourceImageApp.STATUS_EA;

                    case Constantes.StatusFluxoLM.EM_EXCLUSAO:
                        return Constantes.SourceImageApp.STATUS_EE;

                    case Constantes.StatusFluxoLM.APROVADO:
                        return Constantes.SourceImageApp.STATUS_AP;

                    case Constantes.StatusFluxoLM.BAIXA_OPERACIONAL:
                        return Constantes.SourceImageApp.STATUS_BO;

                    case Constantes.StatusFluxoLM.EM_BAIXA_OPERACIONAL:
                        return Constantes.SourceImageApp.STATUS_EB;

                    case Constantes.StatusFluxoLM.EM_EXCLUSAO_BAIXA_OPERACIONAL:
                        return Constantes.SourceImageApp.STATUS_BE;

                    case Constantes.StatusFluxoLM.BAIXA_VENCIMENTO:
                        return Constantes.SourceImageApp.STATUS_BV;
                        
                    default:
                        return value;
                }

            }

        }

        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            //throw new NotImplementedException();
            return value;
        }

        #endregion
    }
       
}
